package com.css.dzj.zfjg.modules.complaintinfo.entity;

import org.hibernate.annotations.GenericGenerator;

import javax.persistence.*;
import java.util.Objects;

//企业投诉信息
@Entity
@Table(name = "JG_LHJG_COMPLAINT_INFO", schema = "DZJZFJG", catalog = "")
public class JgLhjgComplaintInfoEntity {
    private String complaintInfoId;
    private String taskNo;
    private String complaintObject;
    private String complaintObjectCertCode;
    private String complaintType;
    private String complaintTerritory;
    private String serviceType;
    private String serviceName;
    private String disputeDate;
    private String complaintDetail;

    @Id
    @Column(name = "COMPLAINT_INFO_ID")
    @GeneratedValue(generator = "idGenerator")
    @GenericGenerator(name = "idGenerator", strategy = "com.css.dzj.zfjg.common.util.SnowflakeId")
    public String getComplaintInfoId() {
        return complaintInfoId;
    }

    public void setComplaintInfoId(String complaintInfoId) {
        this.complaintInfoId = complaintInfoId;
    }

    @Basic
    @Column(name = "TASK_NO")
    public String getTaskNo() {
        return taskNo;
    }

    public void setTaskNo(String taskNo) {
        this.taskNo = taskNo;
    }

    @Basic
    @Column(name = "COMPLAINT_OBJECT")
    public String getComplaintObject() {
        return complaintObject;
    }

    public void setComplaintObject(String complaintObject) {
        this.complaintObject = complaintObject;
    }

    @Basic
    @Column(name = "COMPLAINT_OBJECT_CERT_CODE")
    public String getComplaintObjectCertCode() {
        return complaintObjectCertCode;
    }

    public void setComplaintObjectCertCode(String complaintObjectCertCode) {
        this.complaintObjectCertCode = complaintObjectCertCode;
    }

    @Basic
    @Column(name = "COMPLAINT_TYPE")
    public String getComplaintType() {
        return complaintType;
    }

    public void setComplaintType(String complaintType) {
        this.complaintType = complaintType;
    }

    @Basic
    @Column(name = "COMPLAINT_TERRITORY")
    public String getComplaintTerritory() {
        return complaintTerritory;
    }

    public void setComplaintTerritory(String complaintTerritory) {
        this.complaintTerritory = complaintTerritory;
    }

    @Basic
    @Column(name = "SERVICE_TYPE")
    public String getServiceType() {
        return serviceType;
    }

    public void setServiceType(String serviceType) {
        this.serviceType = serviceType;
    }

    @Basic
    @Column(name = "SERVICE_NAME")
    public String getServiceName() {
        return serviceName;
    }

    public void setServiceName(String serviceName) {
        this.serviceName = serviceName;
    }

    @Basic
    @Column(name = "DISPUTE_DATE")
    public String getDisputeDate() {
        return disputeDate;
    }

    public void setDisputeDate(String disputeDate) {
        this.disputeDate = disputeDate;
    }

    @Basic
    @Column(name = "COMPLAINT_DETAIL")
    public String getComplaintDetail() {
        return complaintDetail;
    }

    public void setComplaintDetail(String complaintDetail) {
        this.complaintDetail = complaintDetail;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        JgLhjgComplaintInfoEntity that = (JgLhjgComplaintInfoEntity) o;
        return Objects.equals(complaintInfoId, that.complaintInfoId) &&
                Objects.equals(taskNo, that.taskNo) &&
                Objects.equals(complaintObject, that.complaintObject) &&
                Objects.equals(complaintObjectCertCode, that.complaintObjectCertCode) &&
                Objects.equals(complaintType, that.complaintType) &&
                Objects.equals(complaintTerritory, that.complaintTerritory) &&
                Objects.equals(serviceType, that.serviceType) &&
                Objects.equals(serviceName, that.serviceName) &&
                Objects.equals(disputeDate, that.disputeDate) &&
                Objects.equals(complaintDetail, that.complaintDetail);
    }

    @Override
    public int hashCode() {
        return Objects.hash(complaintInfoId, taskNo, complaintObject, complaintObjectCertCode, complaintType, complaintTerritory, serviceType, serviceName, disputeDate, complaintDetail);
    }
}
